$(function() {
    $("#estadotrab").load("Combos?accion=CBO_ESTADO");
    $("#reglab").load("Combos?accion=CBO_REGLAB");
    $("#periodo").load("Combos?accion=CBO_PER");
    $("#annio").load("Combos?accion=CBO_ANNO", function() {
        jsannio();
    });
});

function jsannio() {
    $("#uejecutora").load("Combos?accion=CBO_EJE&anno=" + $("#annio").val(), function() {
        jsuejecutora();
    });
}

function jsuejecutora() {
    $("#ctlcorte").load("Combos?accion=CBO_COR&anno=" + $("#annio").val() + "&ueje="
            + $("#uejecutora").val(), function() {
        jscorte();
    });
}

function jscorte() {
    $("#dependencia").load("Combos?accion=CBO_DEP&anno=" + $("#annio").val()
            + "&ueje=" + $("#uejecutora").val()
            + "&idcorte=" + $("#ctlcorte").val(),
            function() {
                jsdependencia();
            }
    );
}

function jsdependencia() {
    $("#area").load("Combos?accion=CBO_AREA&anno=" + $("#annio").val()
            + "&ueje=" + $("#uejecutora").val()
            + "&idcorte=" + $("#ctlcorte").val()
            + "&iddependencia=" + $("#dependencia").val(), function() {
        jssede();
    });
}

function jssede() {
    $("#sede").load("Combos?accion=CBO_SED&anno=" + $("#annio").val() + "&id="
            + $("#ctlcorte").val() + "&idueje=" + $("#uejecutora").val(), function() {
        jsestadotrab();
    });
}

function jsQry() {
    $.ajax({
        url: "HorariosPro",
        type: "post",
        data: {
            accion: "QRY",
            annio: $("#annio").val(),
            uejecutora: $("#uejecutora").val(),
            corte: $("#ctlcorte").val(),
            numdoc: $("#numdoc").val(),
            dependencia: $("#dependencia").val(),
            area: $("#area").val(),
            sede: $("#sede").val(),
            estadotrab: $("#estadotrab").val(),
            appaterno: $("#appaterno").val(),
            apmaterno: $("#apmaterno").val(),
            nombres: $("#nombres").val(),
            reglab: $("#reglab").val(),
            periodo: $("#periodo").val(),
            periodox: $("#periodo option:selected").text()
        },
        success: function(data) {
            if (data.substring(0, 3) === 'Ok!') {
                data = data.substring(3, data.length);
                $("#qbody").html(data);

            } else {
                $("#qbody").html("<tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>");
                mensaje(data);
            }
        }
    });
}

function jsIns() {
    var id = $("input[name='_upd']:checked").val(); // ID trabajador
    $("#anno_ins").val($("#annio option:selected").text());
    $("#uejecutora_ins").val($("#uejecutora option:selected").text());
    $("#corte_ins").val($("#corte option:selected").text());

    if (isNaN(id)) {
        alert("Seleccione Fila para Asignar Programación");

    } else {
        var trabajador = $("#_trabajador_" + id).text();
        var programacion = $("#_programacion_" + id).text();
        var idtrabajador = $("#_cadena" + id).val();

        if (programacion === "SI") {
            alert(trabajador + " ya tiene Programación");

        } else {
            $.ajax({
                url: "HorariosPro",
                type: "post",
                data: {
                    accion: "QRY_TUR",
                    periodox: $("#periodo").val() // ID (yyyymm)
                },
                success: function(data) {
                    if (data.substring(0, 3) === 'Ok!') {
                        $("#periodo_ins").val($("#periodo option:selected").text());
                        $("#trabajador_ins").val(trabajador);

                        $("#qqbody").html(data);

                        $("#dins").dialog({
                            modal: true,
                            width: 430,
                            buttons: {
                                "Guardar": function() {
                                    var idturno = [];
                                    $("select[name='idturno_ins']").each(function() {
                                        idturno.push($(this).val());
                                    });
                                    //
                                    var idfecha = [];
                                    $("input[name='idfecha_ins']").each(function() {
                                        idfecha.push($(this).val());
                                    });
                                    //
                                    var iddia = [];
                                    $("input[name='iddia_ins']").each(function() {
                                        iddia.push($(this).val());
                                    });

                                    $.ajax({
                                        url: "HorariosPro",
                                        type: "post",
                                        data: {
                                            accion: "INS",
                                            anno: $("#annio").val(),
                                            uejecutora: $("#uejecutora").val(),
                                            corte: $("#ctlcorte").val(),
                                            idtrabajador: idtrabajador,
                                            ids_fecha: idfecha.toString(),
                                            ids_turno: idturno.toString(),
                                            ids_dia: iddia.toString()
                                        },
                                        success: function(data) {
                                            if (data !== "") {
                                                alert("No se pudo agregar horario de " + trabajador + ", porque " + data);
                                            }
                                            $("#dins").dialog("close");
                                            jsQry();
                                        }
                                    });
                                },
                                "Cancelar": function() {
                                    $(this).dialog("close");
                                }
                            }
                        });
                    } else {
                        $("#msg").html(data);

                        $("#dmsg").dialog({
                            modal: true,
                            width: 400,
                            buttons: {
                                "Cerrar": function() {
                                    $(this).dialog("close");
                                }
                            }
                        });
                    }
                }
            });
        }
    }
}

function jsUpd() {
    var id = $("input[name='_upd']:checked").val(); // ID trabajador
    $("#anno_ins").val($("#annio option:selected").text());
    $("#uejecutora_ins").val($("#uejecutora option:selected").text());
    $("#corte_ins").val($("#corte option:selected").text());

    if (isNaN(id)) {
        alert("Seleccione Fila para Cambiar Programación");

    } else {
        var trabajador = $("#_trabajador_" + id).text();
        var programacion = $("#_programacion_" + id).text();
        var idtrabajador = $("#_cadena" + id).val();

    
        if (programacion !== "SI") {
            alert(trabajador + " NO tiene Programación para ser modificada");

        } else {
            $.ajax({
                url: "HorariosPro",
                type: "post",
                data: {
                    accion: "QRY_UPD",
                    periodox: $("#periodo").val(), // ID (yyyymm)
                    idtrabajador: idtrabajador
                },
                success: function(data) {
                    if (data.substring(0, 3) === 'Ok!') {
                        $("#periodo_upd").val($("#periodo option:selected").text());
                        $("#trabajador_upd").val(trabajador);

                        $("#qqbody_upd").html(data);

                        $("#dupd").dialog({
                            modal: true,
                            width: 430,
                            buttons: {
                               
                                "Guardar": function() {
                                    var idturno = [];
                                    $("select[name='idturno_upd']").each(function() {
                                        idturno.push($(this).val());
                                    });
                                    //
                                    var idfecha = [];
                                    $("input[name='idfecha_upd']").each(function() {
                                        idfecha.push($(this).val());
                                    });
                                    //
                                    var iddia = [];
                                    $("input[name='iddia_upd']").each(function() {
                                        iddia.push($(this).val());
                                    });

                                    $.ajax({
                                        url: "HorariosPro",
                                        type: "post",
                                        data: {
                                            accion: "UPD",
                                            idtrabajador: idtrabajador,
                                            anno: $("#annio").val(),
                                            uejecutora: $("#uejecutora").val(),
                                            corte: $("#ctlcorte").val(),
                                            periodox: $("#periodo").val(), // ID (yyyymm)
                                            ids_fecha: idfecha.toString(),
                                            ids_turno: idturno.toString(),
                                            ids_dia: iddia.toString()
                                        },
                                        success: function(data) {
                                            if (data !== "") {
                                                alert("No se pudo modificar horario de " + trabajador + ", porque " + data);
                                            }
                                            $("#dupd").dialog("close");
                                            //jsQry();
                                        }
                                    });
                                },
                                 "Cancelar": function() {
                                    $(this).dialog("close");
                                }
                            }
                        });
                    } else {
                        $("#msg").html(data);

                        $("#dmsg").dialog({
                            modal: true,
                            width: 400,
                            buttons: {
                                "Cerrar": function() {
                                    $(this).dialog("close");
                                }
                            }
                        });
                    }
                }
            });
        }
    }
}

function jsCon() {
    var id = $("input[name='_upd']:checked").val(); // ID trabajador

    if (isNaN(id)) {
        alert("Seleccione Fila para Consultar Programación");

    } else {
        var trabajador = $("#_trabajador_" + id).text();
        var programacion = $("#_programacion_" + id).text();
        var idtrabajador = $("#_cadena" + id).val();
       
           if (programacion !== "SI") {
            alert(trabajador + " NO tiene Programación");

        } else {
            $.ajax({
                url: "HorariosPro",
                type: "post",
                data: {
                    accion: "CON_TUR",
                    periodox: $("#periodo").val(), // ID (yyyymm)
                    idtrabajador: idtrabajador
                },
                success: function(data) {
                    if (data.substring(0, 3) === 'Ok!') {
                        $("#periodo_con").val($("#periodo option:selected").text());
                        $("#trabajador_con").val(trabajador);

                        $("#qqbody_con").html(data);

                        $("#dcon").dialog({
                            modal: true,
                            width: 650,
                            buttons: {
                                "Cerrar": function() {
                                    $(this).dialog("close");
                                }
                            }
                        });
                    } else {
                        $("#msg").html(data);

                        $("#dmsg").dialog({
                            modal: true,
                            width: 400,
                            buttons: {
                                "Cerrarssss": function() {
                                    $(this).dialog("close");
                                },
                                "Excel": function() {
                                    $(this).dialog("close");
                                }
                            }
                        });
                    }
                }
            });
        }
    }
}

function jsExcel() {
  var data = "";
  

  
  var periodo=$("#periodo_con").val();
  var trabajador = $("#trabajador_con").val();
  

    $("#qbody").find('td', 'th').each(function() {
        data += $(this).text() + ";";
    });
    //
    
  
    $("#periodo_excel").val(periodo).text();
    $("#trabajador_excel").val(trabajador).text();
    
    


    if (data !== "") {
        $("#data_excel").val(data);
        document.forms["to_excel"].submit();
    }
}
